using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("DeckHelper")]
	public class DeckHelper : MonoBehaviour
	{
		public UberText m_instructionText => method_3<UberText>("m_instructionText");

		public UberText m_replaceText => method_3<UberText>("m_replaceText");

		public GameObject m_rootObject => method_3<GameObject>("m_rootObject");

		public UIBButton m_suggestDoneButton => method_3<UIBButton>("m_suggestDoneButton");

		public UIBButton m_replaceDoneButton => method_3<UIBButton>("m_replaceDoneButton");

		public PegUIElement m_inputBlocker => method_3<PegUIElement>("m_inputBlocker");

		public Vector3 m_deckCardLocalScale => method_2<Vector3>("m_deckCardLocalScale");

		public GameObject m_3choiceContainer => method_3<GameObject>("m_3choiceContainer");

		public GameObject m_replaceContainer => method_3<GameObject>("m_replaceContainer");

		public GameObject m_2choiceContainer => method_3<GameObject>("m_2choiceContainer");

		public Vector3 m_cardSpacing => method_2<Vector3>("m_cardSpacing");

		public GameObject m_suggestACardPane => method_3<GameObject>("m_suggestACardPane");

		public GameObject m_replaceACardPane => method_3<GameObject>("m_replaceACardPane");

		public UIBButton m_innkeeperPopup => method_3<UIBButton>("m_innkeeperPopup");

		public Actor m_replaceCardActor => method_3<Actor>("m_replaceCardActor");

		public List<Actor> m_choiceActors => method_3<Class271<Actor>>("m_choiceActors")?.method_25();

		public bool m_shown => method_2<bool>("m_shown");

		public DeckTrayDeckTileVisual m_tileToRemove => method_3<DeckTrayDeckTileVisual>("m_tileToRemove");

		public EntityDef m_cardToRemove => method_3<EntityDef>("m_cardToRemove");

		public bool m_continueAfterReplace => method_2<bool>("m_continueAfterReplace");

		public bool m_shouldHandleDeckChanged => method_2<bool>("m_shouldHandleDeckChanged");

		public bool m_ReplaceSingleTemplateCard => method_2<bool>("m_ReplaceSingleTemplateCard");

		public Vector3 m_innkeeperFullScale => method_2<Vector3>("m_innkeeperFullScale");

		public bool m_innkeeperPopupShown => method_2<bool>("m_innkeeperPopupShown");

		public static float INNKEEPER_POPUP_DURATION => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "DeckHelper", "INNKEEPER_POPUP_DURATION");

		public DeckHelper(IntPtr address, string className)
			: base(address, className)
		{
		}

		public DeckHelper(IntPtr address)
			: this(address, "DeckHelper")
		{
		}

		public static DeckHelper Get()
		{
			return MonoClass.smethod_15<DeckHelper>(TritonHs.MainAssemblyPath, "", "DeckHelper", "Get", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void EndButtonClick(UIEvent e)
		{
			method_8("EndButtonClick", e);
		}

		public bool IsActive()
		{
			return method_11<bool>("IsActive", Array.Empty<object>());
		}

		public void OnCardAdded(CollectionDeck deck)
		{
			method_8("OnCardAdded", deck);
		}

		public void UpdateChoices()
		{
			method_8("UpdateChoices");
		}

		public Actor LoadBestCardActor(EntityDef entityDef, TAG_PREMIUM premiumToUse, GhostCard.Type ghostCard)
		{
			return method_14<Actor>("LoadBestCardActor", new object[3] { entityDef, premiumToUse, ghostCard });
		}

		public void CleanOldChoices()
		{
			method_8("CleanOldChoices");
		}

		public void PositionAndShowChoices()
		{
			method_8("PositionAndShowChoices");
		}

		public void FireStateChangedEvent()
		{
			method_8("FireStateChangedEvent");
		}

		public void Show(DeckTrayDeckTileVisual tileToRemove, bool continueAfterReplace, bool replacingCard)
		{
			method_8("Show", tileToRemove, continueAfterReplace, replacingCard);
		}

		public bool OnNavigateBack()
		{
			return method_11<bool>("OnNavigateBack", Array.Empty<object>());
		}

		public void Hide(bool popnavigation)
		{
			method_8("Hide", popnavigation);
		}

		public void ShowInnkeeperPopup()
		{
			method_8("ShowInnkeeperPopup");
		}

		public void InnkeeperPopupClicked(UIEvent e)
		{
			method_8("InnkeeperPopupClicked", e);
		}

		public void HideInnkeeperPopup()
		{
			method_8("HideInnkeeperPopup");
		}

		public void FinishHidePopup()
		{
			method_8("FinishHidePopup");
		}

		public void OnVisualRelease(Actor addCardActor, EntityDef cardToRemove)
		{
			method_8("OnVisualRelease", addCardActor, cardToRemove);
		}

		public void OnGhostCardRelease(Actor addCardActor, EntityDef cardToRemove)
		{
			method_8("OnGhostCardRelease", addCardActor, cardToRemove);
		}

		public void OnVisualOver(Actor actor)
		{
			method_8("OnVisualOver", actor);
		}

		public void OnVisualOut(Actor actor)
		{
			method_8("OnVisualOut", actor);
		}

		public void HandleDeckChanged(CollectionDeck deck, bool continueAfterReplace)
		{
			method_8("HandleDeckChanged", deck, continueAfterReplace);
		}
	}
}
